from flask import json

#接口函数
class Message():
    def __init__(self,code,message='',data=[]):
        print("Message")
        self.code=code
        self.message=message
        self.data=data

    def returnCodeMessage(self):
        """
        simple return result
        :return:
        """
        changeJson={}
        changeJson['code'] = self.code
        changeJson['message'] = self.message
        return changeJson

    def returnAllJson(self):
        """
        :return: sql dao result
        """
        changeJson={}
        changeJson['code']=self.code
        changeJson['message']=self.message
        changeJson['data']=self.data
        return changeJson

    def webReturnCodeMessage(self):
        """
        :return: web app.route return result
        """
        changeJson = {}
        changeJson['code'] =1
        if(self.code!=0000):
            changeJson['code']=0
        changeJson['message'] = self.message
        return changeJson

    def webReturnAllJson(self):
        """
        webResultAllJson
        :return: web app.route return result
        """
        changeJson = {}
        changeJson['code'] = 1
        if (self.code != 0000):
            changeJson['code'] = 0
        changeJson['message'] = self.message
        changeJson['data'] = self.data
        return changeJson



CodeMessageData={
    # 0000:[0000,"成功"],
    # 1062:[1062,'请检查数据是否重复插入'],#唯一性约束不成立
    # 1048:[1048,"请检查某些数据是否能为空"] ,#请检查是否有字段为空
    # 2001: [2001, "未知错误，请重试"],
    # 2002: [2002,"请求方式错误，请使用post方法"]
    #涉及到数据库和前端，优先考虑前端
    #数据以1开头，前端以2开头
    0000: "成功",
    1001:"该用户不存在",#该用户不存在
    1002:"密码错误",#密码错误
    1003:"请检查该用户是否存在，若不存在请添加",
    1004:"用户信息查询失败，请重试",
    1005:"个人或团队荣誉数据查询失败，请重试",
    1006:"著作查询失败，请重试",
    1007:"培训进修、交流查询失败，请重试",
    1008:"自然科研学奖查询失败，请重试",
    1009: "论文查询失败，请重试",
    1010:"专利查询失败，请重试",
    1011:"项目查询失败，请重试",
    1012:"学科竞赛查询失败，请重试",
    1013:"个人或团队荣誉数据更新失败，工号和称号可能冲突或者该数据已被删除",
    1014:"培训进修、交流数据更新失败，工号和开始时间可能冲突或者该数据已被删除",
    1015:"教学科研学奖数据更新失败，工号和项目名称可能冲突或者该数据已被删除",
    1016:"著作教材数据更新失败，工号和成果名称可能冲突或者该数据已被删除",
    1017: "论文更新失败，工号和ISSN/ISBN编号可能冲突或者该数据已被删除",
    1018: "专利更新失败，工号、成果名称可能冲突或者该数据已被删除",
    1019:"用户信息更新失败，工号可能冲突或者该数据已删除",
    1020:"项目更新失败，工号和项目编号可能冲突或者该数据已删除",
    1021:"学科竞赛更新失败，工号和竞赛名称可能冲突或者该数据已删除",
    1022:"管理员权限验证失败，请重试",
    1023:"系主任权限验证失败，请重试",
    1024:"工号和权限都不能修改，请联系管理员",
    1025:"请重新试一试",
    1026:"管理员不能向非用户表中添加数据",
    1027:"普通用户不能向用户表添加数据",
    1028:"请检查数据是否存在",
    1029:"普通用户不能导出用户表",
    1030:"密码更改失败，请重试",
    1031:"token不存在，请登录或者重试",
    1032:"token删除异常，请重试",
    1033:"token全部清除异常，请重试",
    1034:"目录创建失败，请重试",
    1035:"获取名字失败，请重试",
    1036:"保存文件失败，请重试",
    1037:"删除目录失败，请重试",
    1038:"管理员不能上传支撑材料",
    1039:"文件更新失败，该数据可能被删除",
    1040:"个人或团队荣誉表获取名字失败，该数据可能被删除，请重试",
    1041:"著作表获取名字失败，该数据可能被删除，请重试",
    1042:"培训进修、交流表获取名字失败，该数据可能被删除，请重试",
    1043:"论文表获取名字失败，该数据可能被删除，请重试",
    1044:"专利表或取名字，该数据可能被删除，请重试",
    1045:"项目表获取名字失败，该数据可能被删除，请重试",
    1046:"学科竞赛表获取名字失败，该数据可能被删除，请重试",
    1047:"教学科研奖表获取名字失败，该数据可能被删除，请重试",
    1048: "请检查某些数据是否能为空",  # 请检查是否有字段为空
    1049:"文件移除失败",
    1050:"普通用户不能下载文件",
    1051:"文件信息查询失败,该数据可能被删除，请重试",
    1052:"文件不存在，下载失败",
    1062: "请检查数据是否重复插入",  # 唯一性约束不成立
    1070:"非超级管理人员不能修改其他人的密码",
    1071:"该用户不存在，请重试",
    2001: "未知错误，请重试",
    2002: "请求方式错误，请使用post方法",
    2003:"用户数据出错，添加失败，请重试",
    # 2004:"个人或团队荣誉数据出错，添加失败，请重试"
    2004:"请检查字段是否完整",
    2005:"表格的类型范围错误，该范围在0-8之间，包括0和8",
    2006:"请检查用户类型和导出的表格的类型是否合法",
    2007:"没有数据可以导出",
    2008:"读取表格数据错误，请检查表格数据是否规范",
    2009:"请检查文件是否是允许的格式",
    2010:"请求方式错误，请使用get方法"
}